Augmented reality based power management

ABSTRACT

A computer device trains a neural network to determine power recharging directions between sets of computing devices based on historical computing device data and historical user eye data. The computing device receives, from an augmented reality device, computing device data pertaining to a first computing device and a second computing device, and user eye data pertaining to a user associated with the first computing device and the second computing device. The computing device determines a power recharging direction between the first computing device and the second computing device based, at least in part, on providing the received computing device data and the received user eye data as input to the neural network, resulting in an identification of a source computing device and a target computing device. The computing devices triggers a power recharging cycle, wherein the source computing device transfers direct current power to the target computing device.

BACKGROUND OF THE INVENTION

The present invention relates generally to the field of augmentedreality systems, and more particularly to aspects relating to powermanagement.

Generally, a rechargeable battery is an electrical battery which can becharged, discharged, and recharged many times. Rechargeable batteriespower everything from small electronic devices to larger devices such asautomobiles. Rechargeable batteries generally charge via dockingstations and power outlets connected to a municipal power grid.

SUMMARY

Embodiments of the present invention provide a method, system, andprogram product.

A first embodiment encompasses a method. One or more processors train aneural network to determine power recharging directions between sets ofcomputing devices based, at least in part, on: (i) historical computingdevice data, and (ii) historical user eye data. One or more processorsreceive from an augmented reality device, (i) computing device datapertaining to a first computing device and a second computing device,and (ii) user eye data pertaining to a user associated with the firstcomputing device and the second computing device. One or more processorsdetermine a power recharging direction between the first computingdevice and the second computing device based, at least in part, onproviding the received computing device data and the received user eyedata as input to the neural network, resulting in an identification of asource computing device and a target computing device. One or moreprocessors trigger a power recharging cycle, wherein the sourcecomputing device transfers direct current (DC) power to the targetcomputing device.

A second embodiment encompasses a computer program product. The computerprogram product includes one or more computer-readable storage media andprogram instructions stored on the one or more computer-readable storagemedia. The program instructions include program instructions to train aneural network to determine power recharging directions between sets ofcomputing devices based, at least in part, on: (i) historical computingdevice data, and (ii) historical user eye data. The program instructionsinclude program instructions to receive from an augmented realitydevice, (i) computing device data pertaining to a first computing deviceand a second computing device, and (ii) user eye data pertaining to auser associated with the first computing device and the second computingdevice. The program instructions include program instructions todetermine a power recharging direction between the first computingdevice and the second computing device based, at least in part, onproviding the received computing device data and the received user eyedata as input to the neural network, resulting in an identification of asource computing device and a target computing device. The programinstructions include program instructions to trigger a power rechargingcycle, wherein the source computing device transfers direct current (DC)power to the target computing device.

A third embodiment encompasses a computer system. The computer systemincludes one or more computer processors, one or more computer-readablestorage media, and program instructions stored on the computer-readablestorage media for execution by at least one of the one or moreprocessors. The program instructions include program instructions totrain a neural network to determine power recharging directions betweensets of computing devices based, at least in part, on: (i) historicalcomputing device data, and (ii) historical user eye data. The programinstructions include program instructions to receive from an augmentedreality device, (i) computing device data pertaining to a firstcomputing device and a second computing device, and (ii) user eye datapertaining to a user associated with the first computing device and thesecond computing device. The program instructions include programinstructions to determine a power recharging direction between the firstcomputing device and the second computing device based, at least inpart, on providing the received computing device data and the receiveduser eye data as input to the neural network, resulting in anidentification of a source computing device and a target computingdevice. The program instructions include program instructions to triggera power recharging cycle, wherein the source computing device transfersdirect current (DC) power to the target computing device.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is a functional block diagram illustrating a computingenvironment in which a system configures a power recharging cycle, inaccordance with an exemplary embodiment of the present invention.

FIG. 2 is a flowchart which illustrates the operational processes of asystem generating a request to configure the power recharging cyclebetween two or more computing devices on a computing device within theenvironment of FIG. 1, in accordance with an exemplary embodiment of thepresent invention.

FIG. 3 is a flowchart which illustrates the operational processes of asystem for tracking user eye movement and gestures on a computing devicewithin the environment of FIG. 1, in accordance with an exemplaryembodiment of the present invention.

FIG. 4 depicts a block diagram of a user wearing augmented realityeyewear to determine power charging direction, according to at least oneembodiment of the present invention.

FIG. 5 depicts a cloud computing environment, according to at least oneembodiment of the present invention.

FIG. 6 depicts abstraction model layers, according to at least onembodiment of the present invention.

FIG. 7 depicts a block diagram of components of one or more computingdevices within the computing environment depicted in FIG. 1, inaccordance with an exemplary embodiment of the present invention.

DETAILED DESCRIPTION

Detailed embodiments of the present invention are disclosed herein withreference to the accompanying drawings. It is to be understood that thedisclosed embodiments are merely illustrative of potential embodimentsof the present invention and may take various forms. In addition, eachof the examples given in connection with the various embodiments isintended to be illustrative, and not restrictive. Further, the figuresare not necessarily to scale, some features may be exaggerated to showdetails of particular components. Therefore, specific structural andfunctional details disclosed herein are not to be interpreted aslimiting, but merely as a representative basis for teaching one skilledin the art to variously employ the present invention.

References in the specification to “one embodiment”, “an embodiment”,“an example embodiment”, etc., indicate that the embodiment describedmay include a particular feature, structure, or characteristic, butevery embodiment may not necessarily include the particular feature,structure, or characteristic. Moreover, such phrases are not necessarilyreferring to the same embodiment. Further, when a particular feature,structure, or characteristic is described in connection with anembodiment, it is submitted that it is within the knowledge of oneskilled in the art to affect such feature, structure, or characteristicin connection with other embodiments whether or not explicitlydescribed.

Embodiments of the present invention recognize that in a modernizeddigital environment, technology can be utilized to provide for DC powertransfer between two or more rechargeable batteries connected to two ormore computing devices. Embodiments of the present invention provide fora more efficient and effective experience for users to transfer powerbetween two or more computing devices. Furthermore, embodiments of thepresent invention provide for a system to configure two or morecomputing devices to transfer power between the two or more computingdevices while a user utilizes an augmented reality system to establishthe power recharging cycle.

Embodiments of the present invention provide a technological improvementover known solutions for power charging of electronic devices by using,for example, augmented reality eyewear. Embodiments of the presentinvention improve over conventional systems by providing more efficientpower charging for electronic devices that, in turn, reduces the overallload and dependency on the power grid. Embodiments of the presentinvention recognize that a computer system would also see a decrease inload because the system would more efficiently and accurately identifytwo or more computing devices to configure the power charge directionfor the computing devices. Embodiments of the present invention furtherrecognize that the incorporation of augmented reality allows for thesystem to determine computing devices to be utilized in power sharing inreal time and allow for users to efficiently and quickly adjust thedirection of power charging to reduce time spent locating a free poweroutlet on a wall or ensuring that a portable charging device has enoughpower to effectively charge a computing device.

The present invention will now be described in detail with reference tothe Figures.

FIG. 1 is a functional block diagram illustrating computing environment,generally designated 100, in accordance with an embodiment of thepresent invention. Computing environment 100 includes computer system120 and IoT system 130. Computer system 120 includes augmented realityprogram 122, computer interface 124, sensors 126, and database 128. IoTsystem 130 includes client device 132 and client device 134.

In various embodiments of the present invention, computer system 120 isa computing device that can be a standalone device, a server, a laptopcomputer, a tablet computer, a netbook computer, a personal computer(PC), a personal digital assistant (PDA), an augmented reality eyewearor headset, a smartwatch, a desktop computer or any programmableelectronic device capable of executing machine readable programinstructions and communications with IoT system 130. In anotherembodiment, computer system 120 represents a computing system utilizingclustered computers and components to act as a single pool of seamlessresources. In general, computer system 120 can be any computing deviceor a combination of devices with access to IoT system 130, and network110 and is capable of executing augmented reality program 122, computerinterface 124, sensors 126, and database 128. Computer system 120 mayinclude internal and external hardware components as depicted anddescribed in further detail with respect to FIG. 7.

In this exemplary embodiment, augmented reality program 122 and computerinterface 124 are stored on computer system 120. However, in otherembodiments, augmented reality program 122 and computer interface 124may be stored externally and accessed through a communication network,such as network 110. Network 110 can be, for example, a local areanetwork (LAN), a wide area network (WAN) such as the Internet, or acombination of the two, and may include wired, wireless or any otherconnection known in the art. In general, network 110 can be anycombination of connections and protocols that will supportcommunications between computer system 120 and IoT system 130, inaccordance with a desired embodiment of the present invention.

Augmented reality program 122 is depicted in FIG. 1 for illustrativesimplicity. In various embodiments of the present invention, augmentedreality program 122 represents logical operations executing on computersystem 120, where computer interface 124 manages the ability to viewthese logical operations and their results on computer system 120.Computer system 120 can include any number of logical operations thatare managed and executed in accordance with augmented reality program122. In some embodiments, augmented reality program 122 represents aprogram that analyzes input and output (110) data. Additionally,augmented reality program 122, when executing, operates to monitor the110 that was analyzed and generates a modification based on, but notlimited to, the analyzation operation. In some embodiments, augmentedreality program 122 determines whether a specific action is likely totake place and generates a modification request and communicates anotification to IoT system 130 that a modification or reconfiguration isrequired for client device 132 and client device 134 within IoT system130.

Computer system 120 includes computer interface 124. Computer interface124 provides an interface between computer system 120 and IoT system130. In some embodiments, computer interface 124 can be a graphical userinterface (GUI), a web user interface (WUI), or an image projector andcan display text, documents, web browser, windows, user options,application interfaces, instruction for operation, images, andholography display, and includes the information (such as graphic, text,and sound) that a program presents to a user and the control sequencesthe user employs to control the program. In some embodiments, computersystem 120 accesses data communicated from IoT system 130 via aclient-based application that runs on computer system 120. For example,computer system 120 includes mobile application software that providesan interface between computer system 120 and IoT system 130.

In various embodiments of the present invention, client device 132 andclient device 134 represent portable computing devices capable ofexecuting machine readable program instructions and communications withcomputer system 120 and within IoT system 130. In various embodiments,computing environment 100 includes additional various portable computingdevices (i.e., a tablet computer, a smartwatch, a smartphone, ahand-held telephone) not shown. In another embodiment, client device 132and client device 134 represent a computing system utilizing clusteredcomputers and components to act as a single pool of seamless resourceswith access to computer system 120 and network 110. Client device 132and client device 134 may include internal and external hardwarecomponents as depicted and described in further detail with respect toFIG. 7.

Sensors 126 are depicted in FIG. 1 for illustrative simplicity. Invarious embodiments of the present invention, sensors 126 representvarious computing devices executing on computing system 120, wheresensors 126 communicate data to augmented reality program 122. Invarious embodiments, sensors 126 represent computing devices that arecapable of tracking a user's eye movements (i.e., sensor-based eyetracking (EOG)) and gestures. Additionally, in various embodiments,sensors 126 are tracking the user's field of vision and capturing whichcomputing devices the user is staring at (i.e., the user's field ofvision).

In various embodiments, client device 132 and client device 134 includesensors that operate to transfer power wirelessly between two or morecomputing devices without the support of electrical cords or componentsthat physically connect the two or more computing devices. In variousembodiments, additionally, the sensors operate to receive the radiofrequency from one computing device and convert the radio frequencytransmissions into direct-circuit (DC) power. In various embodiments,augmented reality program 122 determines the connection between two ormore computing devices via Bluetooth connection, where this connectiondirects the wireless power signal from one computing device to anothercomputing device. Embodiments of the present invention recognize thatfor the Bluetooth connection between the two or more computing devices atight cone of electromagnetic waves are focused from the first computingdevice to a second computing device. Embodiments of the presentinvention further recognize that security relating to the wireless powertransfer between the two or more computing devices is an importantfactor. In various embodiments, the Bluetooth connection between the twoor more computing devices used to direct beam-forming authenticates thetwo or more computing devices, additionally, the wireless connectionexecutes in a protected mode where only authorized computing devices arecapable of connecting to one another and transferring power. Embodimentsof the present invention provide that the Bluetooth connection that isestablished between the two or more computing devices also operates toauthenticate the two or more computing devices. In various embodiments,the wireless power recharging cycle between the two or more computingdevices operates in a protected mode where only authorized devices canconnect to one another. In various embodiments, augmented realityprogram 122 when executing the power recharging cycle operates toauthenticate the computing devices belong to an authorized user beforegenerating the modification request. In various embodiments, the sensorsoperating on client device 132 and client device 134 determine whether apower recharging cycle is likely to take place and generate data that iscommunicated to augmented reality program 122, wherein augmented realityprogram 122 generates a direction modification and communicates thedirection modification to client device 132 and client device 134.

In various embodiments, augmented reality program 122 communicates withdatabase 128 and accesses (i) data associated with two or more computingdevices (i.e., client device 132 and client device 134), (ii) user dataregarding the two or more computing devices, and (iii) environmentaldata regarding the rechargeable battery levels of the two or morecomputing devices and whether the computing devices are in a thresholdlevel of distance from one another.

In various embodiments of the present invention, augmented realityprogram 122 receives I/O data in the form of user data and computingdevice data. Augmented reality program 122 analyzes the data andprepares a direction modification for client device 132 and clientdevice 134. In various embodiments, augmented reality program 122communicates the data that represents the direction modification withprogram instructions instructing client device 132 and client device 134executing within IoT system 130, where the donor computing device (alsoreferred to as a source computing device) transfers DC power to thereceiving computing device (also referred to as a target computingdevice). In various embodiments, the donor computing device representsthe computing device used to supply DC power to recharge anothercomputing device. Additionally, in various embodiments, the receivingcomputing devices represents the computing device receiving the DC powerfrom the donor computing device to recharge the battery within thereceiving computing device.

In various embodiments of the present invention, augmented realityprogram 122 continuously monitors data from client device 132 and clientdevice 134 executing within the IoT system 130. In various embodiments,augmented reality program 122 monitors at various time periods the powerlevels of the rechargeable batteries of the computing devices (i.e.,client device 132 and client device 134) within IoT system 130. Invarious embodiments, augmented reality program 122 identifies adirection request from a user of computer system 120 (i.e., a userwearing augmented reality eyewear/headset, where augmented realityprogram 122 is executing on the augmented reality eyewear/headset) wherethe direction request identifies the donor computing device and thereceiving computing device. Additionally, the direction request furtheridentifies the threshold level of power to be transferred from the donorcomputing device to the receiving computer device. In variousembodiments, augmented reality program 122 analyzes data received fromsensors executing on the two or more computing devices within IoT system130. In this embodiment, augmented reality program 122 communicates aset of program instructions to client device 132 and client device 134that define the donor computing device and receiving computing deviceand instruct the transfer of power from the donor computing device tothe receiving computing device.

FIG. 1 includes multiple computing devices (i.e., client device 132 andclient device 134) and one or more sensors (i.e., sensors 136) thatmonitor the computing devices to identify data to communicate toaugmented reality program 122. In various embodiments, a user defineswhich computing device's battery must be recharged (i.e., a receivingcomputing device) and which computing device will supply power torecharge the receiving computer device (i.e., a donor computing device).

Embodiments of the present invention provide that augmented realityprogram 122 will utilize historical data as training to determinedifferent configurations for computing devices and identification of thepower requirement needed to recharge the battery of the receivingcomputer device. Additionally, augmented reality program 122 identifiescomputer device data that includes one or more of, but is not limitedto, battery power levels, distance between two or more computer devices,time and date, and the type of connection needed to transfer powerbetween the two or more computing devices. In various embodiments,augmented reality program 122 utilizes the computer device data toestablish a connection between the two or more computer devices within athreshold level of space/distance between the two or more computingdevices. In various embodiments, augmented reality program 122communicates data related to the power recharging of the receivingcomputer device to two or more computing devices. In variousembodiments, the augmented reality program 122 communicates computerdevice data that includes, but is not limited to, battery power levels,distance between two or more computer devices, time and date, and thetype of connection needed to transfer power between the two or morecomputing devices to a user of computer system 120. In variousembodiments, augmented reality program 122 communicates directionmodifications to two or more computer devices (e.g., client device 132and client device 134) to define the donor computer device and thereceiving computer device. In various embodiments, augmented realityprogram 122 operates to communicate program instructions triggering thepower recharging cycle, where the donor computing device begins thepower recharging cycle to the receiving computer device.

In various embodiments, if augmented reality program 122 identifies thatone or more computer devices within the IoT system 130 have no batterypower left or are at a threshold value of battery power that cannottransfer power to the receiving computer device, then augmented realityprogram 122 determines that the source computing device and the targetcomputing device can no longer sustain a power transfer. In variousembodiments, in response to determining that the source computing deviceand the target computing device can no longer sustain the powertransfer, then augmented reality program 122 triggers an end to thepower recharging cycle. In various embodiments, augmented realityprogram 122 generates an alert and communicates the alert to the user ofcomputer system 120 that the two or more computing devices within IoTsystem 130 must be recharged using a static power supply (i.e., wallpower outlet). In various embodiments, augmented reality program 122monitors the power recharging cycle between the donor computer deviceand the receiving computer device.

In various embodiments, augmented reality program 122 receives data fromsensors 126 related to power recharging of the two or more computerdevices. In various embodiments, augmented reality program 122identifies the battery levels of the two or more computer devices anddetermines whether one of the two or more computer devices requires arecharge of its internal battery. In various embodiments, augmentedreality program 122 further determines whether one of the two or morecomputer devices is capable of transferring DC power to at least oneother computer device of the two or more computer devices. In variousembodiments, augmented reality program 122 generates a directionmodification with program instructions instructing the first computingdevice that it is the donor computing device, to begin a powerrecharging cycle, and to transfer power to the second computing device,which is the receiving computing device.

In various embodiments, a user operates computer system 120, wherecomputer system 120 represents an augmented reality eyewear or headset.Additionally, computer system 120 includes sensors that track the user'seye movements and eye gestures. In various embodiments, augmentedreality program 122 tracks the user's direction movement and gestures,where the user looks at the source device and transfers their gaze tothe target device. In various embodiments, the user communicates toaugmented reality program 122, utilizing eye movement and gestures,which computing device is the source device and which computing deviceis the target device of the power recharge cycle. In variousembodiments, augmented reality program 122 tracks the user's eyemovement from a first device to a second device, where the change in thefocus of the eye movement from the first device to the second deviceindicates that the first device is the source device, and the seconddevice is the target device, as will be discussed in further detailbelow.

In various embodiments, augmented reality program 122 tracks the user'seye movement, where the user is capable of changing the direction of thepower recharging cycle between two or more computing devices. In variousembodiments, augmented reality program 122 tracks the user's eyemovement and identifies when the user changes the source device and thetarget device based on, at least, the eye movement and gesture of theuser. Embodiments of the present invention provide for a multi-deviceecosystem, where a plurality of computing devices are present within apredefined area. In various embodiments, the batteries of one or morecomputing devices can be recharged from a power source of a singularcomputing device. In various embodiments, the batteries of one or morecomputing devices can be recharged from a power source of one or morecomputing devices. In various embodiments, augmented reality program 122tracks the focus of the user's eyes and identifies the direction theuser wishes to define the power recharging cycle of the batteries forone or more computing devices. In various embodiments, augmented realityprogram 122 identifies the source device the user wishes to transfer DCpower from and the target device that the user wishes to transfer DCpower to.

In various embodiments, augmented reality program 122 communicates tothe user of computer system 120 the battery levels of each identifiedcomputing devices within the user's field of vision (i.e., two or morecomputing devices). In various embodiments, augmented reality program122 receives data from the user identifying how much power the userwishes to transfer from the source device to the one or more targetdevices. Additionally, augmented reality program 122 receives data fromthe user who wishes to pause, resume, or stop the transfer of DC powerfrom the source device to the one or more target devices. In variousembodiments, augmented reality program 122 communicates a directionmodification to the two or more computing devices (i.e., source deviceand target device) to initiate the power recharging cycle based on, atleast, the eye movement and gesture provided by the user of computingsystem 120, as will be discussed in further detail below.

Embodiments of the present invention provide that augmented realityprogram 122 will utilize historical training data to predict when totrigger the power recharging cycle between various computing devices. Invarious embodiments, augmented reality program 122 learns the pattern ofpower recharging cycle between two or more computing devices based on,at least, previously generated direction modifications from a user ofcomputer system 120 or historical training data provided to a R-CNN(i.e., region-based convolutional neural network). In variousembodiments, the R-CNN includes I/O data, as well as multiple hiddenlayers of neurons (e.g., RELU layer). Augmented reality program 122analyzes the (i) the input data of the CNN and (ii) the change in theoutput variables, at least. In various embodiments, the input datarelates to user eye data as the user looks around within an environment(e.g., user's field of vision) and computing device data that relates tothe plurality of computing devices within the user's field of vision,and the output data relates to the correlation between the user eye dataand the computing device data regarding which computing device requiresa battery recharge (e.g., target computing device) and which computingdevices (e.g., source computing devices) are capable of transferring athreshold value of battery power to the target computing device. Invarious embodiments, augmented reality program 122 analyzes the outputdata of the R-CNN, wherein the output data represents a scaled numericvariable based, at least on, (i) the input data and (ii) the weightsassigned to each input data through the one or more layers of the R-CNN,where the output data describes the relation of the source computingdevice to the target computing device. Embodiments of the presentinvention recognize that the output data is associated with one or morecomputing devices and the related data and user eye data. Additionally,in various embodiments, augmented reality program 122 will learn totrigger power recharging cycles based on, at least, the current batterylevels of two or more computing devices, where the target computingdevice has reached a threshold level of low battery level and requires arecharge from a source device within proximity to the target device. Invarious embodiments, augmented reality program 122 generates arecommendation for the user of client device 132 and client device 134.

In various embodiments, augmented reality program 122 generates arecommendation for power transfer between two or more computing deviceswith program instructions coaching the user which computing device isthe receiving computing device and computing device that will donate thepower to the receiving computing device. In various embodiments,augmented reality program 122 determines the threshold value of thebattery power levels of both the donor computing device and thereceiving computing device, and augmented reality program 122 furtherdetermines the amount of power to be transferred. In variousembodiments, augmented reality program 122 performs the power transferbetween the donor computing device and the receiving deviceautomatically based, at least in part, on historical training data anduser feedback. In various embodiments, augmented reality program 122learns from user feedback when a power transfer between the donorcomputing device and the receiving computing device is required.Additionally, in various embodiments, augmented reality program 122receives verbal and/or gestured communications from the user to initiatethe power transfer between the donor computing device and the receivingcomputing device.

FIG. 2 is a flowchart depicting operations configuring computing devicesto trigger a power recharging cycle for computing environment 100, inaccordance with an illustrative embodiment of the present invention.More specifically, FIG. 2, depicts combined overall operations 200, ofaugmented reality program 122. In some embodiments, operations 200represents logical operations of augmented reality program 122, whereinaugmented reality program 122 represents interactions between logicalcomputing devices communicating with computer system 120 and variousother computing devices connected to network 110. It should beappreciated that FIG. 2 provides an illustration of one implementationand does not imply any limitations with regard to the environments inwhich different embodiments may be implemented. Many modifications tothe depicted environment may be made. In one embodiment, the series ofoperations, in flowchart 200, can be terminated at any operation. Inaddition to the features previously mentioned, any operations offlowchart 200, can be resumed at any time.

In operation 202, augmented reality program 122 analyzes user eyemovement and gestures (i.e., sensor-based eye tracking). In variousembodiments, augmented reality program 122 identifies that a user hasequipped an augmented reality eyewear or headset (i.e., computer system120). In various embodiments, sensors 136 execute on IoT system 130. Invarious embodiments, sensors 126 include, but are not limited to, (i)video cameras that are directed outward to capture the field of visionsthe user is looking at, and (ii) eye motion cameras that track andcapture the user's eye movement and gestures. In various embodiments,augmented reality program 122 receives user eye data from sensors 126regarding the user's eye movement and gestures. In various embodiments,sensors 126 identify the direction of the user's eye movement thatincludes, for example: (i) the user staring in a static straightdirection, (ii) the user's eyes moving to the left or right, (iii) theuser's eyes looking up and down, and (iv) the user's eye looking in anyangle within a one-hundred and eighty (180) degree range of movement. Invarious embodiments, augmented reality program 122 determines thedirection and angle of the user's eye focus based on the movement of theuser's eye, as discussed above. In various embodiments, augmentedreality program 122 further determines the user's eye gestures as itrelates to a command for augmented reality to act. In variousembodiments, the user's eye gesture includes, but is not limited to, (i)blinking with both eyes once, (ii) blinking with both eyes twice, (iii)blinking with the left eye, and (iv) blinking with the right eye. Invarious embodiments, the user can define the identification of the oneor more source devices and the one or more target devices based on, atleast, a pre-determined eye gesture. In one example embodiment, the userdefines that blinking once with the user's left eye selects one or moresource devices that the user's field of vision and gaze is upon and thatblinking once with the user's right eye selects one or more targetdevices that the user's field of vision and gaze is upon.

In operation 204, augmented reality program 122 identifies two or morecomputing devices. In various embodiments, augmented reality program 122receives computing device data from sensors 126, where sensors 126executing on computer system 120 identify two or more computing deviceswithin the field of vision of the user. In various embodiments, thefield of vision of the user represents the direction and angle that theuser is staring with the user's eyes. In various embodiments, sensors126 track and monitor the user's eye movement as the user's field ofvision changes as the user looking within a three-hundred and sixty(360) degree rotation within an x-y-z plane. In various embodiments, thesensors 126 identify a first computing device within the user's field ofvision and as the user changes the field of vision by changing directionand angle of the user's eyes, head, and body, sensors 126 identify, atleast, a second computing device within the user's new field of vision.In various embodiments, sensors 126 identify a first computing deviceand at least a second computing device within the user's first field ofvision without the user's having to change the field of visions bychanging the direction and angle of the user's eye, head, and body. Invarious embodiments, sensors 126 identify a first computing device andat least a second computing device within the user's field of vision andsensors 126 further identify at least a third computing device, wherethe user changes the field of vision by changing the direction and angleof the user's eye, head, and body.

In operation 206, augmented reality program 122 determines the directionof the power recharging cycle. In various embodiments, augmented realityprogram 122 correlates the data received regarding the user's eyemovement and gestures with the data regarding the identified two or morecomputing devices. In various embodiments, augmented reality program 122determines which computing device is the source device based on, atleast, (i) the user's eye gesture of blinking with one eye, blinkingonce with both eyes, and blinking with the left eye or (ii) thetransition of the user's field of vision from the first computing device(i.e., source device) to the, at least, second computing device (i.e.,target device). Additionally, augmented reality program 122 determineswhich computing device is the target device based on, at least, (i) theuser's gesture of blinking twice with one eye, blinking twice with botheyes, and blinking with the right eye or (ii) the transition of theuser's field of vision from the first computing device (i.e., sourcedevice) to the, at least, second computing device (i.e., target device).In various embodiments, augmented reality program 122 determines thedirection modification of the power recharging cycle by theidentification of the source device for the transfer of power to thetarget device.

In various embodiments, augmented reality program 122 determines thatthe user wishes to know the battery level percentages of the two or morecomputing devices. In various embodiments, augmented reality program 122receives data from sensors 126 and determines that based on, at least,the user's eye movement and gestures that the user wishes to know thebattery level percentages. In various embodiments, augmented realityprogram 122 communicates a request to the user with program instructionscoaching the user how to set a control for the user to communicate toaugmented reality program 122 that the user wishes to learn the batterylevel percentages of the various computing devices. In variousembodiments, the control set by the user includes any combination of eyemovement and gestures that the user wishes to utilize. In variousembodiments, augmented reality program 122 analyzes the user eye datareceived from sensors 126 and determines that the user has requested thebattery level percentages of the various computing devices within theuser's field of vision. In various embodiments, augmented realityprogram 122 communicates a request to client device 132 and clientdevice 134 executing within IoT system 130 with program instructionsinstructing client device 132 and client device 134 to communicate thebattery level percentages of their respect device.

In operation 208, augmented reality program 122 generates a powerrecharging cycle and communicates it to two or more computing devices.In response to augmented reality program 122 determining theconfiguration of the power recharging cycle, augmented reality program122 generates a power recharging cycle with program instructions andcommunicates the power recharging cycle to the two or more computingdevices. In various embodiments, as discussed above, augmented realityprogram 122 determines the, at least, one source device and the, atleast, one target device of the power recharging cycle. In variousembodiments, the power recharging cycle instructs the identified, atleast, one source device to trigger the transfer of power and transferDC power from the source device's rechargeable battery to the targetdevice's rechargeable battery utilizing DC power transfer systems knownin the art. Additionally, in various embodiments, the power rechargingcycle instructs the identified, at least, one target device to triggerthe transfer of power and accept the transferred DC power from thesource device. Embodiments of the present invention recognize thatrechargeable batteries known in the art or in the future containconverters that are capable of storing power and releasing power basedon, at least, receiving a set of program instructions instructing therechargeable battery to switch to a power supply.

Embodiments of the present invention provide that there can be one ormore source devices transferring DC power to the, at least, one targetdevice and that there can be one or more target devices that receivetransferred DC power from one or more source devices. Embodiments of thepresent invention are not limited to the transfer of DC power from onesource device to one target device and that embodiments of the presentinvention recognize that any number of source devices and target devicesmay exist within the power recharging cycle.

FIG. 3 depicts flowchart, 300, depicting operations of augmented realityprogram 122 in computing environment 100, in accordance with anillustrative embodiment of the present invention. More specifically,FIG. 3, depicts combined overall operations, 300, of augmented realityprogram 122 executing on computer system 120. In some embodiments,operations 300 represents logical operations of augmented realityprogram 122, wherein interactions between augmented reality program 122,client device 132, client device 134, and sensors 126 represent logicalunits executing on computer system 120. Further, operations 300 caninclude a portion or all of combined overall operations of 200. Invarious embodiments, the series of operations 300, can be performed atthe conclusion of operations 200. In some embodiments, operations 300can be performed simultaneously with operations 200. It should beappreciated that FIG. 3 provides an illustration of one implementationand does not imply any limitations with regard to the environments inwhich different embodiments may be implemented. Many modifications tothe depicted environment may be made. In one embodiment, the series ofoperations, of flowchart 300, can be performed simultaneously.Additionally, the series of operations, in flowchart 300 can beterminated at any operation. In addition to the features previouslymentioned, any operations of flowchart 300 can be resumed at any time.

In operation 302, sensors 126 monitors the user's eyes. In variousembodiments, sensors 126 execute on computer system 120 (i.e., anaugmented reality eye wear or headset). In various embodiments, sensors126 include computing devices, but are not limited to, video cameras,retina scanners, and infrared LEDs and infrared cameras. In variousembodiments, sensors 126 track the user's eyes and monitors when theuser moves or changes.

In operation 304, sensors 126 identifies the user's eye movements andgestures. In various embodiments, sensors 126 capture the infrared lightas the infrared light reflects off of the user's eye and iris andsensors 126 store the infrared reflection as user eye data on database128. In various embodiments, sensors 126 identify when then user's eyesmove and when the user makes a gesture (i.e., blinking). In one exampleembodiment, sensors 126 identify when the user moves their eyes andlooks to the right. In this one example embodiments, sensors 126 capturethis movement through the use of the infrared light reflection andstores this user eye data on database 128. In a second exampleembodiment, sensors 126 identify that the user performs a gesture (i.e.,blinking) and stores this as user eye data on database 128.

In operation 306, augmented reality program 122 receives user eye data.In various embodiments, augmented reality program 122 communicates withdatabase 128 and retrieves the user eye data stored on database 128communicated by sensors 126. In an alternative embodiment, augmentedreality program 122 communicates a set of program instructions tosensors 126 instructing sensors 126 to communicate all captured user eyedata to augmented reality program 122. In various embodiments, augmentedreality program 122 analyzes the user eye data and correlates the usereye data with the computing device data received from sensors 126. Invarious embodiments, augmented reality program 122 determines whichcomputing devices are within the user's field of vision and furtherdetermines which gestures the user has made such as, but not limited to,blinking with one eye or blinking with both eyes (i.e., establishing thesource device and the target device, requesting the threshold value ofthe battery power levels, etc.). In various embodiments, augmentedreality program 122 configures the two or more computing devices andgenerates a direction modification to initiate the power rechargingcycle.

FIG. 4 depicts block diagram 400. In various embodiments, block diagram400 represents an augmented reality environment, where the augmentedreality environment includes a user wearing an augmented reality eyewearor headset 402, sensors 404, two or more computing devices (i.e.,computing device 406 and computing device 408), and a connection cable410. In various embodiments, a user wears the augmented reality eyewearor headset 402 and sensors 404 track the user's eye movement andgestures and include video cameras to identify computing devices withinthe user's field of vision. In various embodiments, computing device 406and computing device 408 are within the user's field of vision.Additionally, cable connection cable 410 operates to transfer DC powerbetween computing device 406 and computing device 408. In variousembodiments, a user of augmented reality eyewear or headset 402designates the source device and the target device of the powerrecharging cycle.

In various embodiments, a user wears an augmented reality eyewear orheadset 402 that includes sensors 404 that includes, but not limited to,an internal compass or a magnetic chip capable of identifying thecardinal direction and the field of visions of the user. In variousembodiments, sensors 404 executing on augmented reality eyewear orheadset 402 further includes, but is not limited to, an angular/linearposition sensor that identifies the angle of the field of vision thatthe user is looking at (i.e., the user is looking down at a forty-five(45) degree angle, the user is looking up at a fifteen (15) degreeangle). In various embodiments, augmented reality program 122 executingon augmented reality eyewear or headset 402 identifies one or morecomputing devices (i.e., computing device 406 and computing device 408)within the computing environment (i.e., computing environment 100).Additionally, in various embodiments, the one or more computing devices(i.e., computing device 406 and computing device 408) and the augmentedreality eyewear or headset 402 are connected to a home network (i.e.,network 110), where the augmented reality eyewear or headset 402transfers data to computing device 406 and computing device 408.

In various embodiments, sensors 404 executing on augmented realityeyewear or headset 402 identifies the cardinal direction, angular, andlinear direction of the user's field of vision and analyzes the user'seye movement and gestures. In various embodiments, augmented realityeyewear or headset 402 receives data from the one or more computingdevices (i.e., computing device 406 and computing device 408), operatingwithin the computing environment, regarding the placement andpositioning of the one or more computing devices. In variousembodiments, augmented reality program 122, executing on augmentedreality eyewear or headset 402, correlates the positioning data of theone or more computing devices with the user's eye data (i.e., user's eyemovement and gestures) and determines which computing device the user isfocusing their gaze upon. In various embodiments, augmented realityprogram 122, executing on augmented reality eyewear or headset 402,utilizes R-CNN analysis (i.e., region-based convolutional neuralnetwork) where augmented reality program 122 is trained utilizinghistorical training data to identify and determine that one or morecomputing devices are present within the user's field of vision. Invarious embodiments, augmented reality program 122 correlates thedetermination of the computing device within the user's field of visionwith the identification of the user's eye movements and gesture anddetermines which specific computing device the user is focusing theirgaze upon.

Embodiments of the present invention provide that the user is capable ofdetermining that a first computing device is the source device and thata second computing device is the target device of the power rechargingcycle. In various embodiments, augmented reality program 122 identifiesthe user's eye gesture, where the user indicates one or more sourcedevices and one or more target devices based on, at least, the eyegesture performed by the user. In various embodiments, the user's eyegesture includes, but is not limited to, (i) blinking with both eyesonce, (ii) blinking with both eyes twice, (iii) blinking with the lefteye, and (iv) blinking with the right eye. In various embodiments, theuser can define the identification of the one or more source devices andthe one or more target devices based on, at least, a pre-determined eyegesture. In one example embodiment, the user defines that blinking oncewith the user's left eye selects one or more source devices that theuser's field of vision and gaze is upon and that blinking once with theuser's right eye selects one or more target devices that the user'sfield of vision and gaze is upon. Additionally, in various embodiments,the user can define additional parameters that include, but are notlimited to, (i) identifying the battery level of one or more computingdevices and (ii) determining a threshold amount of power to transferfrom the source device to the target device.

In various embodiments, augmented reality program 122 tracks the user'seye movements and gestures. In various embodiments, the user focusestheir field of vision and gaze upon a first computing device and byblinking once with the user's left eye augmented reality program 122determines that this is the source device. Additionally, in variousembodiments, augmented reality program 122 tracks the user's field ofvision and gaze towards a second computing device and identifies thatthe user blinks once with the user's right eye and augmented realityprogram 122 determines that the second computing device is the targetdevice of the power recharging cycle. In various embodiments, augmentedreality program 122 authorizes the user's request to initiate the powerrecharging cycle. In various embodiments, augmented reality program 122authorizes the user's request to initiate the power recharging cycleutilizing, but not limited to, (i) a biometric scan and (ii) a computingdevice unique ID identifier. In various embodiments, augmented realityeyewear or headset 402 includes sensors 404 that are capable ofanalyzing the user's pupil and iris and communicates pupil and iris datato augmented reality program 122. In various embodiments, sensors 404perform a biometric scan of the user's iris and pupil. In variousembodiments, augmented reality program 122 analyzes the pupil and irisdata and determines whether the authorized user, utilizing augmentedreality eyewear or headset 402, performed a request to trigger the powerrecharging cycle between two or more computing devices. In variousembodiments, augmented reality program 122 authorizes the user andtriggers the power recharging cycle. In alternative embodiments,augmented reality program 122 does not authorize the user and triggersan end to the power recharging cycle.

It is understood in advance that although this disclosure includes adetailed description on cloud computing, implementation of the teachingsrecited herein are not limited to a cloud computing environment. Rather,embodiments of the present invention are capable of being implemented inconjunction with any other type of computing environment now known orlater developed.

Cloud computing is a model of service delivery for enabling convenient,on-demand network access to a shared pool of configurable computingresources (e.g., networks, network bandwidth, servers, processing,memory, storage, applications, virtual machines, and services) that canbe rapidly provisioned and released with minimal management effort orinteraction with a provider of the service. This cloud model may includeat least five characteristics, at least three service models, and atleast four deployment models.

Characteristics are as follows:

On-demand self-service: a cloud consumer can unilaterally provisioncomputing capabilities, such as server time and network storage, asneeded automatically without requiring human interaction with theservice's provider.

Broad network access: capabilities are available over a network andaccessed through standard mechanisms that promote use by heterogeneousthin or thick client platforms (e.g., mobile phones, laptops, and PDAs).

Resource pooling: the provider's computing resources are pooled to servemultiple consumers using a multi-tenant model, with different physicaland virtual resources dynamically assigned and reassigned according todemand. There is a sense of location independence in that the consumergenerally has no control or knowledge over the exact location of theprovided resources but may be able to specify location at a higher levelof abstraction (e.g., country, state, or datacenter).

Rapid elasticity: capabilities can be rapidly and elasticallyprovisioned, in some cases automatically, to quickly scale out andrapidly released to quickly scale in. To the consumer, the capabilitiesavailable for provisioning often appear to be unlimited and can bepurchased in any quantity at any time.

Measured service: cloud systems automatically control and optimizeresource use by leveraging a metering capability at some level ofabstraction appropriate to the type of service (e.g., storage,processing, bandwidth, and active user accounts). Resource usage can bemonitored, controlled, and reported providing transparency for both theprovider and consumer of the utilized service.

Service Models are as follows:

Software as a Service (SaaS): the capability provided to the consumer isto use the provider's applications running on a cloud infrastructure.The applications are accessible from various client devices through athin client interface such as a web browser (e.g., web-based e-mail).The consumer does not manage or control the underlying cloudinfrastructure including network, servers, operating systems, storage,or even individual application capabilities, with the possible exceptionof limited user-specific application configuration settings.

Platform as a Service (PaaS): the capability provided to the consumer isto deploy onto the cloud infrastructure consumer-created or acquiredapplications created using programming languages and tools supported bythe provider. The consumer does not manage or control the underlyingcloud infrastructure including networks, servers, operating systems, orstorage, but has control over the deployed applications and possiblyapplication hosting environment configurations.

Infrastructure as a Service (IaaS): the capability provided to theconsumer is to provision processing, storage, networks, and otherfundamental computing resources where the consumer is able to deploy andrun arbitrary software, which can include operating systems andapplications. The consumer does not manage or control the underlyingcloud infrastructure but has control over operating systems, storage,deployed applications, and possibly limited control of select networkingcomponents (e.g., host firewalls).

Deployment Models are as follows:

Private cloud: the cloud infrastructure is operated solely for anorganization. It may be managed by the organization or a third party andmay exist on-premises or off-premises.

Community cloud: the cloud infrastructure is shared by severalorganizations and supports a specific community that has shared concerns(e.g., mission, security requirements, policy, and complianceconsiderations). It may be managed by the organizations or a third partyand may exist on-premises or off-premises.

Public cloud: the cloud infrastructure is made available to the generalpublic or a large industry group and is owned by an organization sellingcloud services.

Hybrid cloud: the cloud infrastructure is a composition of two or moreclouds (private, community, or public) that remain unique entities butare bound together by standardized or proprietary technology thatenables data and application portability (e.g., cloud bursting forload-balancing between clouds).

A cloud computing environment is service oriented with a focus onstatelessness, low coupling, modularity, and semantic interoperability.At the heart of cloud computing is an infrastructure comprising anetwork of interconnected nodes.

Referring now to FIG. 5, illustrative cloud computing environment 50 isdepicted. As shown, cloud computing environment 50 comprises one or morecloud computing nodes 10 with which local computing devices used bycloud consumers, such as, for example, personal digital assistant (PDA)or cellular telephone 54A, desktop computer 54B, laptop computer 54C,and/or automobile computer system 54N may communicate. Nodes 10 maycommunicate with one another. They may be grouped (not shown) physicallyor virtually, in one or more networks, such as Private, Community,Public, or Hybrid clouds as described hereinabove, or a combinationthereof. This allows cloud computing environment 50 to offerinfrastructure, platforms and/or software as services for which a cloudconsumer does not need to maintain resources on a local computingdevice. It is understood that the types of computing devices 54A-N shownin FIG. 6 are intended to be illustrative only and that computing nodes10 and cloud computing environment 50 can communicate with any type ofcomputerized device over any type of network and/or network addressableconnection (e.g., using a web browser).

Referring now to FIG. 6, a set of functional abstraction layers providedby cloud computing environment 50 (FIG. 5) is shown. It should beunderstood in advance that the components, layers, and functions shownin FIG. 6 are intended to be illustrative only and embodiments of theinvention are not limited thereto. As depicted, the following layers andcorresponding functions are provided:

Hardware and software layer 60 includes hardware and softwarecomponents. Examples of hardware components include: mainframes 61; RISC(Reduced Instruction Set Computer) architecture based servers 62;servers 63; blade servers 64; storage devices 65; and networks andnetworking components 66. In some embodiments, software componentsinclude network application server software 67 and database software 68.

Virtualization layer 70 provides an abstraction layer from which thefollowing examples of virtual entities may be provided: virtual servers71; virtual storage 72; virtual networks 73, including virtual privatenetworks; virtual applications and operating systems 74; and virtualclients 75.

In one example, management layer 80 may provide the functions describedbelow. Resource provisioning 81 provides dynamic procurement ofcomputing resources and other resources that are utilized to performtasks within the cloud computing environment. Metering and Pricing 82provide cost tracking as resources are utilized within the cloudcomputing environment, and billing or invoicing for consumption of theseresources. In one example, these resources may comprise applicationsoftware licenses. Security provides identity verification for cloudconsumers and tasks, as well as protection for data and other resources.User portal 83 provides access to the cloud computing environment forconsumers and system administrators. Service level management 84provides cloud computing resource allocation and management such thatrequired service levels are met. Service Level Agreement (SLA) planningand fulfillment 85 provide pre-arrangement for, and procurement of,cloud computing resources for which a future requirement is anticipatedin accordance with an SLA.

Workloads layer 90 provides examples of functionality for which thecloud computing environment may be utilized. Examples of workloads andfunctions which may be provided from this layer include: mapping andnavigation 91; software development and lifecycle management 92; virtualclassroom education delivery 93; data analytics processing 94;transaction processing 95; and providing soothing output 96.

FIG. 7 depicts a block diagram, 700, of components of computer system120 and client IoT system 130, in accordance with an illustrativeembodiment of the present invention. It should be appreciated that FIG.7 provides only an illustration of one implementation and does not implyany limitations with regard to the environments in which differentembodiments may be implemented. Many modifications to the depictedenvironment may be made.

Computer system 120 IoT system 130 includes communications fabric 702,which provides communications between computer processor(s) 704, memory706, persistent storage 708, communications unit 710, and input/output(I/O) interface(s) 712. Communications fabric 702 can be implementedwith any architecture designed for passing data and/or controlinformation between processors (such as microprocessors, communicationsand network processors, etc.), system memory, peripheral devices, andany other hardware components within a system. For example,communications fabric 702 can be implemented with one or more buses.

Memory 706 and persistent storage 708 are computer-readable storagemedia. In this embodiment, memory 706 includes random access memory(RAM) 714 and cache memory 716. In general, memory 706 can include anysuitable volatile or non-volatile computer-readable storage media.

Augmented reality program 122, computer interface 124, sensors 126,database 128, client device 132, and client device 134 are stored inpersistent storage 708 for execution and/or access by one or more of therespective computer processors 704 via one or more memories of memory706. In this embodiment, persistent storage 708 includes a magnetic harddisk drive. Alternatively, or in addition to a magnetic hard disk drive,persistent storage 708 can include a solid state hard drive, asemiconductor storage device, read-only memory (ROM), erasableprogrammable read-only memory (EPROM), flash memory, or any othercomputer-readable storage media that is capable of storing programinstructions or digital information.

The media used by persistent storage 708 may also be removable. Forexample, a removable hard drive may be used for persistent storage 708.Other examples include optical and magnetic disks, thumb drives, andsmart cards that are inserted into a drive for transfer onto anothercomputer-readable storage medium that is also part of persistent storage708.

Communications unit 710, in these examples, provides for communicationswith other data processing systems or devices, including resources ofnetwork 110. In these examples, communications unit 710 includes one ormore network interface cards. Communications unit 710 may providecommunications through the use of either or both physical and wirelesscommunications links. Augmented reality program 122, computer interface124, sensors 126, database 128, client device 132, and client device 134may be downloaded to persistent storage 808 through communications unit710.

I/O interface(s) 712 allows for input and output of data with otherdevices that may be connected to computer system 120 and IoT system 130.For example, I/O interface 712 may provide a connection to externaldevices 718 such as a keyboard, keypad, a touch screen, and/or someother suitable input device. External devices 718 can also includeportable computer-readable storage media such as, for example, thumbdrives, portable optical or magnetic disks, and memory cards. Softwareand data used to practice embodiments of the present invention, e.g.,augmented reality program 122, computer interface 124, sensors 126,database 128, client device 132, and client device 134 can be stored onsuch portable computer-readable storage media and can be loaded ontopersistent storage 808 via I/O interface(s) 712. I/O interface(s) 712also connect to a display 720.

Display 720 provides a mechanism to display data to a user and may be,for example, a computer monitor, or a television screen.

The present invention may be a system, a method, and/or a computerprogram product. The computer program product may include a computerreadable storage medium (or media) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Smalltalk, C++ or the like, andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) may execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the block may occur out of theorder noted in the figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

The programs described herein are identified based upon the applicationfor which they are implemented in a specific embodiment of theinvention. However, it should be appreciated that any particular programnomenclature herein is used merely for convenience, and thus theinvention should not be limited to use solely in any specificapplication identified and/or implied by such nomenclature.

It is to be noted that the term(s) such as, for example, “Smalltalk” andthe like may be subject to trademark rights in various jurisdictionsthroughout the world and are used here only in reference to the productsor services properly denominated by the marks to the extent that suchtrademark rights may exist.

What is claimed is:
 1. A computer-implemented method, the methodcomprising: training, by one or more processors, a neural network todetermine power recharging directions between sets of computing devicesbased, at least in part, on: (i) historical computing device data, and(ii) historical user eye data; receiving, by one or more processors,from an augmented reality device, (i) computing device data pertainingto a first computing device and a second computing device, and (ii) usereye data pertaining to a user associated with the first computing deviceand the second computing device; determining, by one or more processors,a power recharging direction between the first computing device and thesecond computing device based, at least in part, on providing thereceived computing device data and the received user eye data as inputto the neural network, resulting in an identification of a sourcecomputing device and a target computing device; and triggering, by oneor more processors, a power recharging cycle, wherein the sourcecomputing device transfers direct current (DC) power to the targetcomputing device.
 2. The computer-implemented method of claim 1,wherein: the computing device data indicates that the target computingdevice has a battery power level below a first threshold value; thecomputing device data indicates that the source computing device has abattery power level above a second threshold value; and the user eyedata indicates the power recharging direction.
 3. Thecomputer-implemented method of claim 1, wherein the user eye dataidentifies a field of vision of the user and a direction of eyemovements of the user.
 4. The computer-implemented method of claim 3,wherein the direction of the eye movements of the user is the powerrecharging direction.
 5. The computer-implemented method of claim 4,wherein the user eye data further identifies a first predefined blinkinggesture associated with the source computing device and a secondpredefined blinking gesture associated with the target computing device.6. The computer-implemented method of claim 1, the method furthercomprising: determining, by one or more processors, that respectivebattery levels of the first computing device and the second computingdevice can no longer sustain a power transfer; and in response todetermining that the respective battery levels of the first computingdevice and the second computing device can no longer sustain the powertransfer, triggering, by one or more processors, an end to the powerrecharging cycle.
 7. The computer-implemented method of claim 6, themethod further comprising: communicating, by one or more processors, analert to the user indicating that the respective battery levels of thefirst computing device and the second computing device can no longersustain the power transfer.
 8. A computer program product, the computerprogram product comprising: one or more computer-readable storage mediaand program instructions stored on the one or more computer-readablestorage media, the stored program instructions comprising: programinstructions to train a neural network to determine power rechargingdirections between sets of computing devices based, at least in part,on: (i) historical computing device data, and (ii) historical user eyedata; program instructions to receive from an augmented reality device,(i) computing device data pertaining to a first computing device and asecond computing device, and (ii) user eye data pertaining to a userassociated with the first computing device and the second computingdevice; program instructions to determine a power recharging directionbetween the first computing device and the second computing devicebased, at least in part, on providing the received computing device dataand the received user eye data as input to the neural network, resultingin an identification of a source computing device and a target computingdevice; and program instructions to trigger a power recharging cycle,wherein the source computing device transfers direct current (DC) powerto the target computing device.
 9. The computer program product of claim8, wherein: the computing device data indicates that the targetcomputing device has a battery power level below a first thresholdvalue; the computing device data indicates that the source computingdevice has a battery power level above a second threshold value; and theuser eye data indicates the power recharging direction.
 10. The computerprogram product of claim 8, wherein the user eye data identifies a fieldof vision of the user and a direction of eye movements of the user. 11.The computer program product of claim 10, wherein the direction of theeye movements of the user is the power recharging direction.
 12. Thecomputer program product of claim 11, wherein the user eye data furtheridentifies a first predefined blinking gesture associated with thesource computing device and a second predefined blinking gestureassociated with the target computing device.
 13. The computer programproduct of claim 8, the stored program instructions further comprising:program instructions to determine that respective battery levels of thefirst computing device and the second computing device can no longersustain a power transfer; and program instructions to, in response todetermining that the respective battery levels of the first computingdevice and the second computing device can no longer sustain the powertransfer, trigger an end to the power recharging cycle.
 14. The computerprogram product of claim 13, the stored program instructions furthercomprising: program instructions to communicate an alert to the userindicating that the respective battery levels of the first computingdevice and the second computing device can no longer sustain the powertransfer.
 15. A computer system, the computer system comprising: one ormore processors; one or more computer readable storage media; andprogram instructions stored on the one or more computer readable storagemedia for execution by at least one of the one or more processors, thestored program instructions comprising: program instructions to train aneural network to determine power recharging directions between sets ofcomputing devices based, at least in part, on: (i) historical computingdevice data, and (ii) historical user eye data; program instructions toreceive from an augmented reality device, (i) computing device datapertaining to a first computing device and a second computing device,and (ii) user eye data pertaining to a user associated with the firstcomputing device and the second computing device; program instructionsto determine a power recharging direction between the first computingdevice and the second computing device based, at least in part, onproviding the received computing device data and the received user eyedata as input to the neural network, resulting in an identification of asource computing device and a target computing device; and programinstructions to trigger a power recharging cycle, wherein the sourcecomputing device transfers direct current (DC) power to the targetcomputing device.
 16. The computer system of claim 15, wherein: thecomputing device data indicates that the target computing device has abattery power level below a first threshold value; the computing devicedata indicates that the source computing device has a battery powerlevel above a second threshold value; and the user eye data indicatesthe power recharging direction.
 17. The computer system of claim 15,wherein the user eye data identifies a field of vision of the user and adirection of eye movements of the user.
 18. The computer system of claim17, wherein the direction of the eye movements of the user is the powerrecharging direction.
 19. The computer system of claim 18, wherein theuser eye data further identifies a first predefined blinking gestureassociated with the source computing device and a second predefinedblinking gesture associated with the target computing device.
 20. Thecomputer system of claim 15, the stored program instructions furthercomprising: program instructions to determine that respective batterylevels of the first computing device and the second computing device canno longer sustain a power transfer; and program instructions to, inresponse to determining that the respective battery levels of the firstcomputing device and the second computing device can no longer sustainthe power transfer, trigger an end to the power recharging cycle.